<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>06_JS函数</title>
</head>
<body>

<script>
    //函数的定义
    function f1(){
        //函数体
      console.log('我是f1函数');
    }
    //函数的调用
    f1();
    function f2(n){
      console.log('我是f2函数');
      console.log(n);
    }
    f2(10);
    f2('你好');
    f2(true);

    //函数可以设置多个参数,且参数个数可以不匹配
    //如果实参个数大于形参个数,多余的实参会被舍掉
    //如果实参个数小于形参个数,未被赋值的形参值为undefined
    function f3(x,y){
        console.log("f3被执行了!");
        console.log(x+y);
    }
    f3(100,200);
    f3(1,2,3,4);//1+2
    f3(1);//1+undefined=NaN

    function f4(x, y) {
        console.log("f4被执行了!");
        return x + y;
    }
    var res = f4(100, 200);
    console.log(res);
    console.log(f4(111, 200));

    //匿名函数自调用
    (function(){
        console.log("匿名函数被执行了!");
    })();

    //将函数整体交给变量f5保存,f5就相当于函数的名字去使用即可
    var f5 = function(){
        console.log("f5函数被执行了!");
    }
    f5();
    console.log(f5);
    console.log(typeof f5);
</script>
</body>
</html>